perm filename FOO1.ECL[NET,GUE] blob
sn#089092 filedate 1974-02-27 generic text, type T, neo UTF8
IMPLY←EXPR(A:FORM,B:FORM;BOOL)
EQUALL(A,B) OR
BEGIN
DECL AOP:FORM LIKE A.CAR;
DECL BOP:FORM LIKE B.CAR;
DECL A1:FORM LIKE A.CADR;
DECL B1:FORM LIKE B.CADR;
DECL A2:FORM LIKE A.CADDR;
DECL B2:FORM LIKE B.CADDR;
DECL AC:INT LIKE VAL(A.CADDDR);
DECL BC:INT LIKE VAL(B.CADDDR);
AND(AOP=BOP OR AOP="=" AND BOP="LE",
A2=B2,
(A1=B1 AND AC LE BC) OR
AND8MVAL8A1)=INT,MVAL(B1=INT,VAL(A1) GE VAL8B1)))
END;
EQUALL←EXPR(F1:FORM,F2:FORM;BOOL)
BEGIN
MVAL(F1)#MVAL8F2)=>FALSE;
MVAL8F1)=DTPR =>EQUALL8F1.CAR,F2.CAR) AND EQUALL(F1.CDR,F2.CDR);
VAL8F1)=VAL(F2);
END;
WEAKER←EXPR(OP1:FORM,OP2:FORM;FORM)[)OP1="="=>OP2;OP1(];
[)DECL SEL\LIST:FORM BYVAL QL('LISP');
LOAD "SYS:LIB" (];
PF←EXPR(L\:FORM;NONE)GENERIC(MVAL(F))
[DTPR]=>PRINTL(F.CDAR," ",F.CAR," ",F.CADDR," + ",F.CADDDR);
TRUE=>PRINT(F);
END;
MAP←EXPR(R\:ROUTINE) REPEAT L\=NIL=>NOTHING
R\(EVAL(L\.CAR));
L\←L\.CDR(];
PFL←EXPR(L\:FORM LIDTED)[)PRINT("
");MAP(PF)(];
PRINTL←EXPR(L\:FORM LISTED)MAP(PRINT);
PFC←EXPR(C:FORM BYVAL)
REPEAT
PRINT("
");
C=NIL=> NOTHING;
TO 5 REPEAT C=NIL=>NOGHING;
PF(C.CAR);
PRINT(" ");
C←C.CDR;
END;
END;
MVAL←EXPR(A:ANY;MODE)MD(VAL(A));
DECL A2:FORM LIKE A.CADDR;
DECL B2:FORM LIKE B.CADDR;
DECL AC:INT LIKE VAL(A.CADDDR);
DECL BC:INT LIKE VAL(B.CADDDR);